Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.awt.image
Class ImageFilter

    java.lang.Object
      |
      +--java.awt.image.ImageFilter

All Implemented Interfaces:
  Cloneable, ImageConsumer

Direct Known Subclasses:
  BufferedImageFilter, CropImageFilter, ReplicateScaleFilter, RGBImageFilter

public class ImageFilter
extends Object
implements ImageConsumer, Cloneable

This class implements a filter for the set of interface methods that are used to deliver data from an ImageProducer to an ImageConsumer. It is meant to be used in conjunction with a FilteredImageSource object to produce filtered versions of existing images. It is a base class that provides the calls needed to implement a "Null filter" which has no effect on the data being passed through. Filters should subclass this class and override the methods which deal with the data that needs to be filtered and modify it as necessary.

See Also:
  `FilteredImageSource`, `ImageConsumer`

Field Summary
`protected ImageConsumer` | `consumer` The consumer of the particular image data stream for which this instance of the ImageFilter is filtering data.

Fields inherited from interface java.awt.image.ImageConsumer
`COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHT`

Constructor Summary
`ImageFilter()`

Method Summary
`Object` | `clone()` Clones this object.
`ImageFilter` | `getFilterInstance(ImageConsumer ic)` Returns a unique instance of an ImageFilter object which will actually perform the filtering for the specified ImageConsumer.
`void` | `imageComplete(int status)` Filters the information provided in the imageComplete method of the ImageConsumer interface.
`void` | `resendTopDownLeftRight(ImageProducer ip)` Responds to a request for a TopDownLeftRight (TDLR) ordered resend of the pixel data from an ImageConsumer.
`void` | `setColorModel(ColorModel model)` Filter the information provided in the setColorModel method of the ImageConsumer interface.
`void` | `setDimensions(int width, int height)` Filters the information provided in the setDimensions method of the ImageConsumer interface.
`void` | `setHints(int hints)` Filters the information provided in the setHints method of the ImageConsumer interface.
`void` | `setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)` Filters the information provided in the setPixels method of the ImageConsumer interface which takes an array of bytes.
`void` | `setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)` Filters the information provided in the setPixels method of the ImageConsumer interface which takes an array of integers.
`void` | `setProperties(Hashtable props)` Passes the properties from the source object along after adding a property indicating the stream of filters it has been run through.

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### consumer

    protected ImageConsumer consumer

  The consumer of the particular image data stream for which this instance of the ImageFilter is filtering data. It is not initialized during the constructor, but rather during the getFilterInstance() method call when the FilteredImageSource is creating a unique instance of this object for a particular image data stream.

  See Also:
    `getFilterInstance(java.awt.image.ImageConsumer)`, `ImageConsumer`

Constructor Detail

### ImageFilter

    public ImageFilter()

Method Detail

### getFilterInstance

    public ImageFilter getFilterInstance(ImageConsumer ic)

  Returns a unique instance of an ImageFilter object which will actually perform the filtering for the specified ImageConsumer. The default implementation just clones this object.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Parameters:
    `ic` - the specified `ImageConsumer`
  Returns:
    an `ImageFilter` used to perform the filtering for the specified `ImageConsumer`.

### setDimensions

    public void setDimensions(int width,
                              int height)

  Filters the information provided in the setDimensions method of the ImageConsumer interface.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setDimensions` in interface `ImageConsumer`
  Parameters:
    `width` - the width of the source image
    `height` - the height of the source image
  See Also:
    `ImageConsumer.setDimensions(int, int)`

### setProperties

    public void setProperties(Hashtable props)

  Passes the properties from the source object along after adding a property indicating the stream of filters it has been run through.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setProperties` in interface `ImageConsumer`
  Parameters:
    `props` - the list of properties to be associated with this image

### setColorModel

    public void setColorModel(ColorModel model)

  Filter the information provided in the setColorModel method of the ImageConsumer interface.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setColorModel` in interface `ImageConsumer`
  Parameters:
    `model` - the specified `ColorModel`
  See Also:
    `ImageConsumer.setColorModel(java.awt.image.ColorModel)`

### setHints

    public void setHints(int hints)

  Filters the information provided in the setHints method of the ImageConsumer interface.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setHints` in interface `ImageConsumer`
  Parameters:
    `hints` - a set of hints that the ImageConsumer uses to process the pixels
  See Also:
    `ImageConsumer.setHints(int)`

### setPixels

    public void setPixels(int x,
                          int y,
                          int w,
                          int h,
                          ColorModel model,
                          byte[] pixels,
                          int off,
                          int scansize)

  Filters the information provided in the setPixels method of the ImageConsumer interface which takes an array of bytes.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setPixels` in interface `ImageConsumer`
  Parameters:
    `w` - the width of the area of pixels
    `h` - the height of the area of pixels
    `model` - the specified `ColorModel`
    `pixels` - the array of pixels
    `off` - the offset into the `pixels` array
    `scansize` - the distance from one row of pixels to the next in the `pixels` array
  See Also:
    `ImageConsumer.setPixels(int, int, int, int, java.awt.image.ColorModel, byte[], int, int)`

### setPixels

    public void setPixels(int x,
                          int y,
                          int w,
                          int h,
                          ColorModel model,
                          int[] pixels,
                          int off,
                          int scansize)

  Filters the information provided in the setPixels method of the ImageConsumer interface which takes an array of integers.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `setPixels` in interface `ImageConsumer`
  Parameters:
    `w` - the width of the area of pixels
    `h` - the height of the area of pixels
    `model` - the specified `ColorModel`
    `pixels` - the array of pixels
    `off` - the offset into the `pixels` array
    `scansize` - the distance from one row of pixels to the next in the `pixels` array
  See Also:
    `ImageConsumer.setPixels(int, int, int, int, java.awt.image.ColorModel, byte[], int, int)`

### imageComplete

    public void imageComplete(int status)

  Filters the information provided in the imageComplete method of the ImageConsumer interface.

  Note: This method is intended to be called by the ImageProducer of the Image whose pixels are being filtered. Developers using this class to filter pixels from an image should avoid calling this method directly since that operation could interfere with the filtering operation.

  Specified by:
    `imageComplete` in interface `ImageConsumer`
  Parameters:
    `status` - the status of image loading
  See Also:
    `ImageConsumer.imageComplete(int)`

### resendTopDownLeftRight

    public void resendTopDownLeftRight(ImageProducer ip)

  Responds to a request for a TopDownLeftRight (TDLR) ordered resend of the pixel data from an ImageConsumer. The ImageFilter can respond to this request in one of three ways.
  1. If the filter can determine that it will forward the pixels in TDLR order if its upstream producer object sends them in TDLR order, then the request is automatically forwarded by default to the indicated ImageProducer using this filter as the requesting ImageConsumer, so no override is necessary.
  2. If the filter can resend the pixels in the right order on its own (presumably because the generated pixels have been saved in some sort of buffer), then it can override this method and simply resend the pixels in TDLR order as specified in the ImageProducer API.
  3. If the filter simply returns from this method then the request will be ignored and no resend will occur.

  Parameters:
    `ip` - The ImageProducer that is feeding this instance of the filter - also the ImageProducer that the request should be forwarded to if necessary.
  See Also:
    `ImageProducer.requestTopDownLeftRightResend(java.awt.image.ImageConsumer)`

### clone

    public Object clone()

  Clones this object.

  Overrides:
    `clone` in class `Object`
  Returns:
    a clone of this instance.
  See Also:
    `Cloneable`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.